Brick by Brick 2024

Automating Building Data Classification

Project description

My colleague Hatef Rahmani and I took part in the Brick to Brick 2024 challenge organized on AI Crowd by UNSW Sydney. The goal of the challenge was to classify building data streams into categories defined by the Brick schema. Using time-series data, including sensor readings and equipment statuses, we had to organize and standardize this information to streamline management processes.

Our approach centered on extensive feature engineering using TS Fresh, followed by a Random Forest Classifier with Label Powerset transformation. We explored various models and techniques, including AutoGluon and a multi-level approach, before arriving at our final solution.

This was a challenging task due to the number of classes and time-series. You can find the full code and documentation in the GitHub repository, and an engineering report is available here.

Despite the limited time available, we ranked 8th out of 31 teams. The project was a great opportunity to apply machine learning techniques to a real-world problem in the building management domain. It also allowed us to deepen our knowledge of time-series data processing and classification algorithms.

We experimented with modern libraries such as AutoGluon, Optuna (for hyperparameter optimization), TSFresh (for time-series feature extraction), more classic libraries such as Scikit-learn and XGBoost, and mlflow for model tracking and management. I also used Coiled for distributed training on a cluster of virtual machines in Azure.

Technologies Used

python
scikit-learn